package com.tjl.yangxixis.api;

import com.lyp.jsonbean.AllTaskBean;
import com.lyp.jsonbean.CarOrdersDetailsBean;
import com.lyp.jsonbean.CarReceBean;
import com.lyp.jsonbean.CarTaskDetailsBean;
import com.lyp.jsonbean.ChengdanBean;
import com.lyp.jsonbean.DectionTaskDetailsBean;
import com.lyp.jsonbean.DetailsSingeBean;
import com.lyp.jsonbean.DetectionDetailsBean;
import com.lyp.jsonbean.IndependentBean;
import com.lyp.jsonbean.IndoorDetailsBean;
import com.lyp.jsonbean.IndoorTaskDetailsBean;
import com.lyp.jsonbean.JLCarBean;
import com.lyp.jsonbean.JLSingeIndoorBean;
import com.lyp.jsonbean.JlSingeDetectionBean;
import com.lyp.jsonbean.LoginBean;
import com.lyp.jsonbean.MAllTaskBean;
import com.lyp.jsonbean.MNoyuyueBean;
import com.lyp.jsonbean.MTodayBean;
import com.lyp.jsonbean.MYesyuyueBean;
import com.lyp.jsonbean.MyReportBean;
import com.lyp.jsonbean.MyReportDetailsBean;
import com.lyp.jsonbean.NoOrderBean;
import com.lyp.jsonbean.NofenpeiBean;
import com.lyp.jsonbean.OpinionBean;
import com.lyp.jsonbean.PersonageBean;
import com.lyp.jsonbean.RecheckBean;
import com.lyp.jsonbean.RenYuanBean;
import com.lyp.jsonbean.ReportBean;
import com.lyp.jsonbean.ResetBean;
import com.lyp.jsonbean.SignBean;
import com.lyp.jsonbean.UpdateBean;
import com.lyp.jsonbean.YesOrderBean;
import com.lyp.jsonbean.YuyueBean;
import com.lyp.jsonbean.YuyueTimeBean;

import java.util.Map;

import okhttp3.RequestBody;
import retrofit2.Call;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.GET;
import retrofit2.http.Multipart;
import retrofit2.http.POST;
import retrofit2.http.Part;
import retrofit2.http.PartMap;
import retrofit2.http.Query;

/**
 * 作者:ChenXi 时间:2017/5/23 12: 00
 */

public interface YangxixiApi {

     public String APP_URL = "http://www.91yangxixi.com/api/index.php/api/";


    //登录
    @FormUrlEncoded
    @POST("app/login")
//    @POST("testapi.php")
    Call<LoginBean> getLogin(
            @Field("userName") String userName,
            @Field("userPwd") String userPwd);

    //抢单/接单(检测)
    @GET("app/robOrder")
//    @GET("jiance.php")
    Call<JlSingeDetectionBean> getSingDetection(
            @Query("server_select") String server_select,
            @Query("page") int page,
            @Query("c_id") String c_id);

    //接单(车内)
    @GET("app/robOrder")
//     @GET("jiedancar.php")
    Call<JLCarBean> getSingCar(
            @Query("c_id") String c_id,
            @Query("server_select") String server_select,
            @Query("page") int page);

    //抢单(室内)
    @GET("app/robOrder")
//    @GET("jiedanindoor.php")
    Call<JLSingeIndoorBean> getSingIndoor(
            @Query("server_select") String server_select,
            @Query("page") int page,
            @Query("c_id") String c_id);

    //接单详情(车内)
    @GET("app/orderDetails")
//     @GET("carxq.php")
    Call<CarOrdersDetailsBean> getCarOrders(
            @Query("o_id") String o_id);

    //抢单详情(检测)
    @GET("app/orderDetails")
//    @GET("jianceqiangdan.php")
    Call<DetectionDetailsBean> getDetectionOrders(
            @Query("o_id") String o_id);

    //抢单详情(室内)
    @GET("app/orderDetails")
//    @GET("indoorxiangqing.php")
    Call<IndoorDetailsBean> getIndoorOrders(
            @Query("o_id") String o_id);

    //所有任务
    //刷新有问题
    @GET("app/allMission")
//    @GET("alltask.php")
    Call<AllTaskBean> getAllTask(
            @Query("c_id") String c_id,
            @Query("server_select") String server_select,
            @Query("page") int page);

    //未分配
    @GET("app/undistributed")
//    @GET("nofenpei.php")
    Call<NofenpeiBean> getNoTask(
            @Query("c_id") String c_id,
            @Query("server_select") String server_select,
            @Query("page") int page);

    //已预约
   @GET("app/subscriber")
//    @GET("yiyuyue.php")
    Call<YesOrderBean> getYesOrder(
            @Query("c_id") String c_id,
            @Query("server_select") String server_select,
            @Query("page") int page);

    //未预约
    @GET("app/unsubscriber")
//    @GET("noyuyue.php")
    Call<NoOrderBean> getNoOrder(
            @Query("c_id") String c_id,
            @Query("server_select") String server_select,
            @Query("page") int page);

    //我的任务(全部任务)
    @GET("app/staff_allMission")
//    @GET("malltask.php")
    Call<MAllTaskBean> getMAlltask(
            @Query("a_id") String a_id,
            @Query("page") int page);

    //今日任务(全部任务)
    @GET("app/staff_dateMission")
//    @GET("today.php")
    Call<MTodayBean> getMToday(
            @Query("a_id") String a_id,
            @Query("page") int page);

    //已预约(我的任务)
    @GET("app/staff_subscriber")
//    @GET("myiyuyue.php")
    Call<MYesyuyueBean> getMYestask(
            @Query("a_id") String a_id,
            @Query("page") int page);

    //未预约(我的任务)
    @GET("app/staff_unsubscriber")
//    @GET("mnoyuyue.php")
    Call<MNoyuyueBean> getMNotask(
            @Query("a_id") String a_id,
            @Query("page") int page);

    //所有人员
    @GET("app/all_member")
//    @GET("renyuan.php")
    Call<RenYuanBean> getRenyuan(
            @Query("c_id") String c_id);


    //自主分配
    @GET("app/distribute")
//    @GET("zizhufenpei.php")
    Call<IndependentBean> getIndepen(
            @Query("id") String id,
            @Query("ids") String ids);

    //平均分配
    @GET("app/distribute_avg")
//    @GET("avgfenpei.php")
    Call<IndependentBean> getAvgIndepen(
            @Query("c_id") String id,
            @Query("ids") String ids);

    //个人信息
    @GET("Order/userMessage")
//    @GET("geren.php")
    Call<PersonageBean> getPerson(
            @Query("a_id") String a_id);

    //修改密码
    @GET("Order/pwdUpdate")
//    @GET("updatepwd.php")
    Call<UpdateBean> getUpdate(
            @Query("user") String user,
            @Query("old_pwd") String old_pwd,
            @Query("new_pwd") String new_pwd);

    //接单成功(车内)
    @GET("app/car_joinOrder")
//    @GET("jiedancg.php")
    Call<CarReceBean> getCarRece(
            @Query("o_id") String o_id,
            @Query("c_id") String c_id);

    //复检接单成功
    @GET("app/detection_joinOrder")
//    @GET("fujian.php")
    Call<RecheckBean> getRecheck(
            @Query("o_id") String o_id,
            @Query("c_id") String c_id);

    //抢单成功
    @GET("app/bitRob")
//    @GET("qiangdan.php")
    Call<DetailsSingeBean> getDetailsSinge(
            @Query("o_id") String o_id,
            @Query("c_id") String c_id);


    //任务详情(所有任务车内详情)
    @GET("app/staff_orderDetails")
//    @GET("allcardetils.php")
    Call<CarTaskDetailsBean> getCarTaskDetails(
            @Query("o_id") String o_id);

    //任务详情(所有任务检测详情)
    @GET("app/staff_orderDetails")
//    @GET("dectiondetils.php")
    Call<DectionTaskDetailsBean> getDectionTaskDetails(
            @Query("o_id") String o_id);


    //任务详情(所有室内任务详情)
    @GET("app/staff_orderDetails")
//    @GET("allindoorxiangqing.php")
    Call<IndoorTaskDetailsBean> getInoorTaskDetails(
            @Query("o_id") String o_id);

    //经理报告
    @GET("Order/order_report")
//    @GET("baogao.php")
    Call<ReportBean> getReport(
            @Query("c_id") String c_id,
            @Query("type") int type,
            @Query("datetime") String datetime);

    //销售员报告
    @GET("Order/staff")
//    @GET("xiaoshouyuanbaogao.php")
    Call<MyReportBean> getMyReport(
            @Query("a_id") String a_id,
            @Query("type") int type,
            @Query("datetime") String datetime);

    //销售员报告详情
    @GET("Order/orderReport")
//    @GET("baogaodetails.php")
    Call<MyReportDetailsBean> getMyReportDetils(
            @Query("o_ids") String o_ids);

    // 成单
    @Multipart
    @POST("app/order_button")
    Call<ChengdanBean> uploadFile(
            @Part("o_id") RequestBody o_id,
            @PartMap Map<String, RequestBody> params0,
            @PartMap Map<String, RequestBody> params);

    //预约
    @GET("app/subscriber_button")
    Call<YuyueBean> getYuyue(
            @Query("o_id") String o_id,
            @Query("note") String note,
            @Query("subscriber_time") String datetime);

    //重置密码
    @GET("Order/staff_manage")
    Call<ResetBean> getReset(
            @Query("a_ids") String a_ids);

    //预约时间查询
    @GET("app/Appointment_query")
    Call<YuyueTimeBean> getYuyueTime(
            @Query("a_id") String a_id,
            @Query("subscriber_day") String subscriber_day,
            @Query("page") int page);

    //反馈信息
    @GET("Order/user_feedback")
    Call<OpinionBean> getOpinion(
            @Query("a_id") String a_id,
            @Query("feedback") String feedback);

    //签到
    @GET("app/sign_in")
    Call<SignBean> getSign(
            @Query("type") int type,
            @Query("o_id") String o_id,
            @Query("check_address") String check_address);
}
